草庐IT

C++ Protobuf

全部标签

Go with Protobuf

原文在这里。本教程为Go程序员提供了使用Protocolbuffer的基本介绍。本教程使用proto3向Go程序员介绍如何使用protobuf。通过创建一个简单的示例应用程序,它向你展示了如何:在.proto中定义消息格式使用protocolbuffer编译器使用GoprotocolbufferAPI读写消息这并不是protocolbuffer在Go中使用的完整指南。更多细节,详见ProtocolBufferLanguageGuide、GoAPIReference、GoGeneratedCodeGuide和EncodingReference。为什么使用ProtocolBuffer我们要使用的例

捆绑TypeScript和Protobuf.js带有tsify

我使用GoogleAPI从lib.proto生成lib.js。在打字稿中,我已经使用了declarevarlib:any;。我的问题是浏览忽略了lib.js,因为它只是声明。有什么方法可以在正确的位置添加lib.js到bundle.js?我的tsify命令:browserify-ptsifysrc/main.ts>bundle.js我的tsconfig:{"compilerOptions":{"declaration":false,"noImplicitAny":true,"target":"ES6","removeComments":true,"module":"commonjs","sou

【C#】: Import “google/protobuf/timestamp.proto“ was not found or had errors.问题彻底被解决!

使用C#作为开发语言,将pb文件转换为cs文件的时候相信很多人都会遇到一个很棘手的问题.第一个问题:那就是protoc3环境下,importTimestamp的问题,在头部import“google/protobuf/timestamp.proto”;的时候会抛异常:google/protobuf/timestamp.proto"wasnotfoundorhaderrors;解决办法【博主「pamxy」的原创文章的分享】:(注:之后才发现,不需要添加这个目录也可以,因为timestamp.proto生成的timestamp.pb.cc文件已经在编译libprotobuf.lib文件时作为源码编

tcp - 使用 protobuf-net 反序列化 Protocol Buffer 时如何指定流长度?

我正在尝试使用ProtocolBuffers通过TCP连接将整数从服务器发送到客户端。我相信我的服务器正在向流中写入内容,但是当客户端尝试从网络流中反序列化时,我的代码会无限期地暂停。我的直觉告诉我,客户端不知道流的长度,所以它不知道读取何时完成,但是Deserialize方法没有长度输入,所以我不确定如何实现这个。下面是我的原型(prototype)定义、服务器和客户端的代码。原型(prototype)定义PublicClassProtoPublicClassTCPPublicPropertyCommandAsIntegerEndClassEndClass服务器代码Dimcomman

c - RHEL 7.1 中持久 TCP 连接的高可用性/故障转移

具有持久TCP连接的高可用性/故障转移我正在尝试找出正确的部分来为基于C的服务器应用程序实现高可用性和故障转移设置。理想情况下,TCP连接会持续数天。如果主服务器由于不受控制的网络问题而关闭,则备用服务器将充当主服务器,并将TCP连接转移到该服务器。套接字连接中的数据看起来与protobuf数据结构非常相似。这不是HTTP。到目前为止,我一直在研究keepalived和HAProxy,但它们似乎都不允许在不断开session的情况下将持久TCPsession重定向/故障转移到不同的备用服务器。我正在寻找的是,如果主服务器出现故障,那么备用服务器将处理所有具有TCP连接的客户端,而不会断

java - 如何使用 Protobuf 将数据从 Python 发送到 Java?

Java客户端byte[]aReceiveData=newbyte[1024];DatagramPacketaReceivePacket=newDatagramPacket(aReceiveData,aReceiveData.length);aServerSocket.receive(aReceivePacket);ByteArrayInputStreamaInput=newByteArrayInputStream(aReceiveData);Messagetest=Message.parseDelimitedFrom(aInput);错误"Protocolmessagecontain

c# - 如何通过 TCP 和 protobuf-net 接收包

我正在编写一个使用ProtocolBufferC#的应用程序。我需要一些如何通过TCP发送和接收数据的示例。特别是,如何确定到达的是哪种类型的包裹。我有课:[ProtoContract]classPackage1{//fields}[ProtoContract]classPackage2{//fields}和写入流的方法privatestaticvoidSendPackage(Streamstream,Package1package){Serializer.Serialize(stream,package);}privatestaticvoidSendPackage(Streamstr

c# - 如何处理传入的 protobuf 消息

我使用TCPClient的NetworkStream和protobuf-net通过TCP发送和接收protobuf消息。看到一个类似的问题:HowtoproperlyhandleincomingprotobufmessagewithaNetworkStream?但在我的例子中,只能有一种消息类型,所以我认为我不需要解析器。所以我序列化了我的对象并使用tcp/ip发送它,在我的服务器上我尝试反序列化它并得到io异常:无法从传输连接读取数据。客户:...using(varms=newMemoryStream()){Serializer.Serialize(ms,person);data=m

ios - 如何为 protobuf 生成 swift 文件

我有我员工的.proto文件。现在我需要使用此原型(prototype)说明连接到服务。据我所知,我需要为我的swift项目生成一些文件来装箱/拆箱我的消息。但我不明白该怎么做。我找到了很多关于如何安装protobuf的说明。任何人都可以逐步解释我需要做什么吗?提前致谢。 最佳答案 根据ProtocolBuffers-Swift的安装说明:...gitclonegit@github.com:alexeyxo/protobuf-swift.git./scripts/build.shAdd./src/ProtocolBuffers/Pr

[golang 微服务] 3. ProtoBuf认识,安装以及golang 中ProtoBuf使用

一.protobuf简介前言在移动互联网时代,手机流量、电量是最为有限的资源,而移动端的即时通讯应用无疑必须得直面这两点。解决流量过大的基本方法就是使用高度压缩的通信协议,而数据压缩后流量减小带来的自然结果也就是省电:因为大数据量的传输必然需要更久的网络操作、数据序列化及反序列化操作,这些都是电量消耗过快的根源。当前即时通讯应用中最热门的通信协议无疑就是Google的Protobuf了,基于它的优秀表现,微信和手机QQ这样的主流IM应用也早已在使用它简介Protobuf是ProtocolBuffers的简称,它是Google公司开发的一种数据描述语言,是一种轻便高效的结构化数据存储格式,可以用于